package com.jiangyao.common.utils;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang.StringUtils;

import java.util.List;

/**
 * json 转换处理 工具类
 */
public class JsonUtil {


	/**
	 * 把对象转换成json
	 *
	 * @param object 对象
	 * @return 结果
	 */
	public static String toJSONString(Object object) {
		if (object == null) {
			return null;
		}
		return JSONObject.toJSONString(object);
	}

	/**
	 * 把json转换成对象
	 *
	 * @param json  字符串
	 * @param clazz class对象
	 * @param <T>   对象class
	 * @return 结果
	 */
	public static <T> T parse(String json, Class<T> clazz) {
		if (StringUtils.isBlank(json)) {
			return null;
		} else {
			return JSON.parseObject(json, clazz);
		}
	}

	/**
	 * 把json转换成对象集合
	 *
	 * @param json  字符串
	 * @param clazz class对象
	 * @param <T>   对象class
	 * @return 结果
	 */
	public static <T> List<T> parse2Array(String json, Class<T> clazz) {
		if (StringUtils.isBlank(json)) {
			return null;
		} else {
			return JSON.parseArray(json, clazz);
		}
	}


}
